A flash solid state memory device (“SSD”) typically achieves significantly higher write-only and read-only bandwidth when compared to the bandwidth observed for mixed read-write workloads.
Conventional input-output (“IO”) scheduling schemes typically issue write commands to an SSD memory immediately upon receiving the request from an application layer. Further, writes tend to be randomly distributed over time. For example, an application writing at 200 MB/s with 128 KB block size would typically issue write IOs approximately separated by about 0.64 ms on average.